Method and apparatus for placing a long distance call based on a virtual phone number

ABSTRACT

A method and apparatus for reducing the cost of long distance phone calls is disclosed. Accordingly, an originating phone network is operatively connected to a first intermediate point, and a receiving phone network is operatively connected to a second intermediate point. Each intermediate point is operatively connected to communicate via a data network. Users on the originating and destination phone networks may communicate based on virtual numbers. The virtual number is preferably within the local calling area of the originating phone network. The first and second intermediate points route calls to any geographic location, regardless of distance, over the data network based on the virtual number. This provides the advantage of allowing a user on the originating phone network to access a user at a distant location for a price that is substantially similar to the price of a local call.

RELATED APPLICATIONS

The present application is a continuation of U.S. patent application Ser. No. 12/692,808, filed Jan. 25, 2010 now abandoned which in turn is a continuation of U.S. patent application Ser. No. 12/153,504, filed May 20, 2008, now U.S. Pat. No. 7,680,262, which is a divisional of U.S. patent application Ser. No. 10/774,689, filed Feb. 10, 2004, now U.S. Pat. No. 7,386,111, the contents of all of which are incorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates to long distance phone calls. More specifically, the present invention relates to a method and apparatus for minimizing the cost of making a long distance phone call.

BACKGROUND OF THE INVENTION

Traditional phone systems include local carriers and long distance carriers. Local carriers connect calls within a given local area, while long distance carriers carry calls between the local carriers. The telephone lines from a home or office connect directly to a wire center, which is often referred to as a central office. The central office has one or more switches, which route or direct telephone calls from one destination to another.

Telephone numbers typically include an area code, and a seven digit telephone number. The seven digit telephone number includes a three digit central office number, and four digit central office extension. The three digit central office number directs calls to a particular central office. Once the call reaches the desired central office, the four digit extension directs the call to a line that is served by that central office. Area codes are typically used for long distance phone calls, as discussed below.

Local telephone calls within a small area are often completed within a single central office. In this configuration, calls within the same area are served by the same central office. The central office connects the incoming call to the destination number. If the area is larger however, communication with a second central office may be necessary. The two central offices are typically connected by a trunk, which is a line between the central offices. The destination receives the call from the first central office and then directs it to the appropriate destination, based on the dialed phone number.

Each area code, as mentioned above, corresponds to a particular group of central offices. When a user dials an area code and then the seven digit telephone number, the central office analyzes the dialed number. If the dialed number is located within the Local Transport and Access Area (LATA), then the call is directed to the appropriate central office. A LATA, or local calling area, is typically a contiguous geographic area. If the dialed number is outside of the LATA, the local central office checks its database to determine which long distance company the user has selected for making the call. The local central office then switches the call to lines that are connected to the long distance company's nearest switch, often referred to as a point of presence (POP). Once the long distance company receives the call, it analyzes the phone number and routes the call across the long distance network to the POP that is closest to the called number. That POP routes the call back to a local central office that is near the destination phone, which then completes the call as described above.

The local and long distance companies incur costs for the equipment, switching calls, and maintaining their equipment. All of these costs are eventually passed on to the consumer. Because local calls involve one or two switching stations owned by one company, the costs of a local telephone call are typically low. Typically, a consumer pays a fixed fee for a unlimited amount of local calls. However, because long distance calls are transferred from the local telephone company, to a long distance carrier, and then back to a local telephone company, the cost of a long distance call is greater than a local call. Typically, long distance calls are charged by the minute. However, rates vary depending on a number of factors, such as the number of switches between the originating and destination numbers and taxes. For example, long distance calls between countries may be higher than long distance calls within a given country.

A continuing need exists for a method and apparatus that is capable of reducing the costs associated with long distance telephone calls.

SUMMARY OF THE INVENTION

In one embodiment, the present invention comprises a method for transmitting information between two or more points. The information that is transmitted can be, for example, a telephone call. The method comprises receiving a virtual number from at least one point on an originating network at a first intermediate point on a computer network. Then, based on the virtual number, a second intermediate point on the computer network is determined. The first and second intermediate points are preferably capable of communicating over the computer network.

Once the second intermediate point is determined, a connection is established between the second intermediate point and a point on the destination network, based on the virtual number that was entered at the originating network. The first and second intermediate points then allow the point on the originating network and the point on the destination network to communicate. That communication can, but does not need to, include converting information from the originating and destination networks into a form suitable for transmission over the computer network.

In this embodiment, the virtual number can include, for example, an area code that is within the local calling area of the point on the originating network. The point on the originating network may, but does not have to be, a telephone. The virtual number is assigned to the first and second intermediate points, which may be servers, to allow communication between the originating point and the destination point based on a call routing table.

In one exemplary embodiment of the present invention, data is preferably transmitted over the computer network based on data packets, and data is preferably transmitted over the originating and destination networks by transmitting analog signals. In order to allow the originating user and the destination user to communicate, the first and second intermediate points are preferably capable of converting analog signals into digital data that can be put into data packets, and vice versa.

In another exemplary embodiment, the present invention comprises an apparatus for transmitting information between at least two points. The apparatus includes at least one point on an originating network that is capable of communicating with a first intermediate point based on at least one virtual number. Also included is at least one point on a destination network capable of communicating with a second intermediate point based on the virtual number.

In one embodiment, the point on the originating network and the point on the destination network are preferably telephones and the first and second intermediate points may be servers. A computer network is operatively connected to the first and second server to allow the telephones to communicate. The servers are preferably capable of converting information from the telephones into a form suitable for transmission over the computer network.

In this embodiment, the virtual number can include, for example, an area code that is within the local calling area of the originating telephone. The virtual number is assigned to the first and second servers to allow communication between the originating and destination telephones. The first and second servers allow this communication based on call routing tables, which are preferably part of the servers.

In one exemplary embodiment of the present invention, data from the telephones is transmitted as analog signals, and data is transmitted over the computer network based on data packets. The servers can, but do not need to, be capable of analog to digital conversion, or digital to analog conversion. This allows data from the telephones to be transmitted over the computer network as digital data in the form of, for example, data packets.

BRIEF DESCRIPTION OF THE DRAWINGS

Further features and advantages of the invention can be ascertained from the following detailed description that is provided in connection with the drawings described below:

FIG. 1 is a block diagram showing an overview of an exemplary system according to an embodiment of the present invention;

FIG. 2 is a diagram showing an exemplary embodiment of the present invention; and

FIG. 3 is a diagram showing another exemplary embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Increasingly, phone companies are using computer networks such as the Internet, to transport long distance calls from one destination to another. Transferring voice calls over a data network is typically accomplished by converting analog voice signals into data packets. This is typically, but not necessarily, accomplished using an industry standard known as Voice over Internet Protocol (VoIP). Transporting calls over computer networks allows local phone companies to bypass long distance carriers. Additionally, because computer network infrastructures are already in place, the cost of transporting calls over computer networks is greatly minimized.

The present invention provides a method and apparatus for minimizing the cost of a long distance call by transporting voice traffic over computer networks. In one embodiment, the present invention comprises a method and apparatus for transmitting voice information between originating and destination points. The originating and destination points may include, but are not limited to, telephones, fax machines, pagers, computers, two way radios, cellular telephones, or telephones operatively connected to the public switched telephone network (PSTN). In a preferred embodiment, the originating and destination points are telephones operatively connected to the PSTN.

The two telephones can be, but do not have to be, operatively connected to separate networks, and each network is operatively connected to its own intermediate point. The intermediate points, which are preferably operatively connected by a computer network, allow the two telephone users to communicate based on the virtual number that is entered by the user of the originating telephone.

The area code of the virtual number is preferably within the local calling area of the originating telephone. In an exemplary embodiment, each virtual number is assigned to a destination telephone. The assignment information is stored in a memory, and can be referenced to determine which destination telephone number a virtual number is assigned to. The memory may, but does not have to be, operatively connected to the two intermediate points. Operatively connecting a memory to each of the two intermediate points allows the delay between receiving a number and determining its destination to be minimized.

In an exemplary embodiment, when a virtual number is received by a first intermediate point, the call may be routed from the first intermediate point to a second intermediate point that is within the local calling area of the destination telephone. The second intermediate point then directs the call to the destination telephone. The two intermediate points can direct a call to any destination number, regardless of the distance between the two telephones. This allows a user to access a long distance telephone using only a local virtual phone number, and provides the advantage of reducing the cost of the call.

Information may be transmitted on the originating and destination networks in any manner known to those skilled in the art. This may include, but is not limited to, information in analog or digital format. Additionally, any type of information may be transmitted between the two points on the originating and destination networks. This may include, but is not limited to, voice, data, or facsimile transmissions.

In one embodiment, the present invention comprises a set of routers distributed at different geographical areas. Each router is operatively connected to a computer network such that they are capable of communicating with each other. Each of the routers are preferably operatively connected to one or more originating or destination networks to receive and process telephone calls.

The router is preferably capable of providing an interface between a central office and the computer network. This may include, but is not limited to, converting data into a format capable of transmission over the computer network. In one embodiment, the router may comprise any computing device known to those skilled in the art. For example, in some embodiments the router may comprise a processor, such as a computer. Alternately, the router may comprise a router that is modified to interpret phone numbers and convert voice signals into data packets. In other embodiments, the router may comprise a server, or proxy server.

In one embodiment, the router receives and interpret interprets a virtual phone number transmitted from an originating network. After processing a phone number to determine its destination, the router connects to another router that is connected to the destination network. Once a connection is established between the originating and destination routers, the originating router converts the voice data into data packets using a desired protocol, for example, VoIP or VoP. Preferably, the process of converting the voice data into data packets is performed on a real-time, continuous basis. Each router can also be capable of converting the data packets back into voice data on a real-time, continuous basis. Such conversion, however, need not be performed by the router.

Data conversion on a real-time, continuous basis allows data to be transmitted between the originating and destination networks and the computer network with a substantially minimal amount of delay. This provides the advantage of allowing the originating and destination user to communicate with substantially minimal audible distortion. This also allows the two users to communicate over long distances while minimizing the cost of the call.

In one embodiment, a virtual phone number is assigned to a phone number on the destination network (“physical number”). The virtual phone number is assigned to a local router, such as a proxy server. This may be done by updating the memory that stores the virtual numbers and the physical number that they are assigned to. Each virtual phone number serves as a alias for, and directs calls to, a destination physical number. The virtual phone number does not exist on any physical device on the originating or destination network. Thus, calls do not have to be routed through any physical device on the originating or destination networks, which reduces the complexity and costs of routing a call.

FIG. 1 is a block diagram showing an overview of an exemplary system according to an embodiment of the present invention. As shown in FIG. 1, user 101 places a call to user 103. In order to do so, user 101 dials the virtual number that is assigned to the physical number of user 103. As shown in FIG. 1, user 101 dials the number, “202-424-1382.” This is a local call for user 101, and allows the user 101 to access router 105. In order to direct the phone call to the appropriate destination, router 105 communicates with a routing table 107. Preferably, routing table 107 is included in router 105. However, in some embodiments it may be a separate element, or part of another element can communicate with router 105.

The router 105 communicates with the routing table 107 to determine which call router 109 the virtual phone number “202-424-1382” corresponds to. In this exemplary embodiment, the routing table includes the physical number that is assigned to the virtual number and information that instructs router 105 to connect to a second router 109. The routing table determines which router 109 to connect to based on the proximity of router 109 to user 103. The router 109 that is chosen is preferably within the local calling area of user 103, and may be positioned closest to user 103.

Once this is determined, router 105 transfers the call to router 109 via a computer network 111. When the call is transferred from router 105 to router 109, the virtual numbers, or its equivalents, are included in the transmitted information. When the call reaches router 109, the router 109 communicates with the routing table 113 to determine what destination number the virtual number is assigned to. Based on this communication, router 109 determines that the destination phone number is “732-528-2603,” which corresponds with user 103. A connection is then established between router 109 and user 103. The connection may include, but is not limited to, a connection via, for example, the Internet protocol. Once the connection is established, user 101 and user 103 can communicate without incurring typical long distance charges.

FIG. 2 is a diagram showing an exemplary embodiment of the present invention. As shown in FIGS. 1 and 2, multiple virtual numbers 201 may be assigned to a physical number. In this embodiment, each router 105 in a different geographical area may have a different virtual number. Alternately, each router 105 may be accessed using a plurality of virtual numbers. Each virtual number preferably allows an originating user 101 to dial a number within their local area code in order to access a single destination user 103. This provides the advantage of allowing users in different geographical locations to communicate with user 103 while only dialing a local number. In this embodiment, the multiple users 101 may communicate with user 103 simultaneously or independently.

FIG. 3 is a diagram showing another exemplary embodiment of the present invention. In this embodiment, one or more virtual numbers may be assigned to multiple physical numbers 301. In other words, a virtual number may be used to call more than one physical number 301. The calls may be directed to their assigned physical number 301 in any desired manner, as described below.

In one embodiment the virtual number may be assigned such that the server router 109 rings the physical devices 301 all at once, or one at a time. Information regarding the order of routing may be stored in the routing table 113. If all of the devices ring at the same time, then the call is routed to the physical number 301 that answers first. If each phone 301 rings one at a time, the user has the option of rolling over to the next physical number in a random order or sequentially by a predefined order.

A virtual number that is assigned to a physical device may be changed upon a users request. This can be done quickly and with minimal cost by reprogramming the routing table, such as routing table 107 shown in FIG. 1. Preferably, this change can be done with minimal manual intervention. However, in some embodiments a router may be reprogrammed manually.

Although the present invention has been described with reference to particular embodiments, it will be understood to those skilled in the art that the invention is capable of a variety of alternative embodiments within the spirit of the appended claims. 

What is claimed is:
 1. A method of establishing a communications link, comprising: receiving a virtual telephone number at a first intermediate point from an originating point, the first intermediate point being operatively connected to a data network; and transmitting a call setup request over the data network that includes a second intermediate point, wherein the call setup request includes the virtual telephone number or its equivalent, and wherein information in the call setup request allows the second intermediate point to establish a communications link to a destination point that corresponds to the virtual telephone number.
 2. The method of claim 1, further comprising determining an identity of the second intermediate point based on the virtual telephone number or its equivalent.
 3. The method of claim 2, wherein the step of determining the identity of the second intermediate point comprises: sending a query to an intermediate point routing table, the query including the virtual telephone number or its equivalent; and receiving, from the intermediate point routing table, an indication of the identity of the second intermediate point.
 4. The method of claim 3, wherein the step of receiving an indication of the identity of the second intermediate point comprises receiving an Internet protocol (IP) address of a proxy server that can act as the second intermediate point.
 5. The method of claim 3, further comprising: determining, based on the virtual telephone number or its equivalent, the identity of the second intermediate point, the second intermediate point being capable of establishing a communications link to a destination point that corresponds to the virtual telephone number; and transmitting the identity of the second intermediate point to the first intermediate point.
 6. The method of claim 1, further comprising establishing a communications link between the second intermediate point and the destination point using information in the call setup request.
 7. The method of claim 6, wherein the step of establishing a communications link between the second intermediate point and the destination point comprises: sending a query to a destination point routing table, the query including the virtual telephone number or its equivalent; receiving, from the destination point routing table, an indication of the an identity of the a destination point that corresponds to the virtual telephone number; and establishing a communications link between the second intermediate point and the destination point using the identity information received from the destination point routing table.
 8. The method of claim 7, wherein the indication of the identity of the destination point comprises a physical telephone number.
 9. A system for establishing a communications link, comprising: a computer server that is operatively connected to a data network and that acts as a first intermediate point in the data network, where the computer server is configured to: means for receivingreceive a virtual telephone number at a first intermediate point from an originating point, the first intermediate point being operatively connected to a data network; and means for transmittingtransmit a call setup request over the data network from the first intermediate point to a second intermediate point, wherein the call setup request includes the virtual telephone number or its equivalent, and wherein information in the call setup request allows the second intermediate point to establish a communications link to a destination point that corresponds to the virtual telephone number.
 10. A system for establishing a communications link, comprising: an intermediate point routing table that includes information linking virtual telephone numbers to identities of intermediate points capable of establishing communications links to destination points associated with the virtual telephone numbers; and a first intermediate point comprising at least one processor that receives a virtual telephone number from an originating point, and that transmits a call setup request to a second intermediate point, wherein the call setup request includes the virtual telephone number or its equivalent, and wherein the intermediate point routing table, the first intermediate point and the second intermediate point are all coupled to a data network.
 11. The system of claim 10, wherein information in the call setup request allows the second intermediate point to establish a communications link to a destination point that corresponds to the virtual telephone number.
 12. The system of claim 10, wherein the first intermediate point queries the intermediate point routing table to determine an identity of the second intermediate point.
 13. The system of claim 10, wherein the first intermediate point sends a query to the intermediate point routing table, the query including the virtual telephone number or its equivalent, wherein the intermediate point routing table uses the virtual telephone number or its equivalent to determine an identity of the second intermediate point, and wherein the intermediate point routing table sends an indication of the identity of the second intermediate point to the first intermediate point in response to the query.
 14. The system of claim 13, wherein the indication of the identity of the second intermediate point comprises an Internet protocol (IP) address of a proxy server that can act as the second intermediate point.
 15. The system of claim 10, wherein the second intermediate point uses the virtual telephone number to establish a communications link to a destination point corresponding to the virtual telephone number.
 16. The system of claim 15, wherein the first intermediate point establishes a communications link to the originating point, and wherein a communications link is also established between the first intermediate point and the second intermediate point such that communications can pass between the originating point and the destination point via the first and second intermediate points.
 17. The system of claim 16, wherein the second intermediate point sends a query to a destination point routing table, the query including the virtual telephone number or its equivalent, wherein the destination point routing table uses the virtual telephone number or its equivalent to determine an identity of a destination point corresponding to the virtual telephone number, and wherein the destination point routing table sends an indication of the identity of the destination point to the second intermediate point in response to the query.
 18. The system of claim 17, wherein the second intermediate point uses the indication of the identity information it of the destination point that the second intermediate point receives from the destination point routing table to establish a communications link to the destination point.
 19. The system of claim 17, wherein the destination point routing table sends a physical telephone number corresponding to the virtual telephone number to the second intermediate point.
 20. The system of claim 19, wherein the second intermediate point uses the physical telephone number to establish a communications link to the destination point.
 21. A system for facilitating at least a portion of a telephony communication between an originating point and a destination point, comprising: a first intermediate point comprising at least one processor that is configured to receive a communication setup request from a second intermediate point, wherein the communication setup request includes a virtual telephone number received from the originating point, wherein the virtual telephone number corresponds to a physical number associated with the destination point; and a first routing table that comprises a part of the first intermediate point, wherein the first intermediate point is configured to use the communication setup request and information in the first routing table to determine an identity of the destination point; wherein the first intermediate point facilitates the telephony communication, at least in part, by receiving the communication setup request over a data network from the second intermediate point.
 22. A system for facilitating at least a portion of a communication link between an originating point and a destination point, comprising: a first intermediate point configured to receive a virtual number from the originating point, wherein the virtual number corresponds to the destination point, and wherein the first intermediate point is configured to send a communication setup request to a second intermediate point over a data network, the communication setup request including the virtual number; and a routing table that comprises information linking virtual numbers with the identities of intermediate points capable of establishing communications links to destination points based on a proximity of the intermediate points to the destination points.
 23. A system for facilitating at least a portion of a communication link between an originating point and a destination point, comprising: a first intermediate point configured to receive a virtual number from an originating point, and a routing database that comprises information that associates second intermediate points with destination points that correspond to virtual numbers based on a proximity of the second intermediate points to the destination points; wherein the first intermediate point is configured to use the virtual number and information in the routing database to determine the identity of a second intermediate point associated with the destination point that corresponds to the virtual number, and wherein the first intermediate point is configured to send a communication setup request to the second intermediate point over a data network, the communication setup request including the virtual number.
 24. A method of facilitating at least a portion of a communication link between an originating point and a destination point, comprising: receiving, from the originating point, a virtual number at a first intermediate point, wherein the virtual number corresponds to the destination point; determining an identity of a second intermediate point capable of communicating with the destination point based on a proximity of the second intermediate point to the destination point; and sending a communication setup request to the second intermediate point over a data network, the communication setup request including the virtual number. 